package main

import "fmt"

type Animal struct {
	Type string
	Weight int
}

type Dog struct {
	Animal
	Name string
}

func (d Dog) String () string{
	return d.Name + ": " + d.Type
}

func main(){
	var a1 Animal = Animal{"Tiger", 230}
	var d1 Dog = Dog{Animal{"Labrador", 100}, "Seven"}
	fmt.Println(a1)
	fmt.Println(&d1)  // 传地址不会有问题，如果定义的时候用的是 *Dog,这里打印的时候必须加&才会有效果
}